package com.gdawj.javabeans;

import java.io.Serializable;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.IdClass;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

@Entity
@IdClass(EnseigneID.class)
public class Enseigne implements Serializable {

    @Id private Long idEnseignant;
    @Id private Long idPromotion;
    @Id private Long idMatiere;

    // lien vers la classe Enseignant
    @ManyToOne(cascade=CascadeType.PERSIST)
    @JoinColumn(name="IDENSEIGNANT",insertable=false,updatable=false)
    private Enseignant enseignant;
    // lien vers la classe Promotion
    @ManyToOne(cascade=CascadeType.PERSIST)
    @JoinColumn(name="IDPROMOTION",insertable=false,updatable=false)
    private Promotion promotion;
    // lien vers la classe Matiere
    @ManyToOne(cascade=CascadeType.PERSIST)
    @JoinColumn(name="IDMATIERE",insertable=false,updatable=false)
    private Matiere matiere;

    
    public Enseigne()
    {

    }

    public Enseignant getEnseignant() {
        return enseignant;
    }

    public void setEnseignant(Enseignant enseignant) {
        this.enseignant = enseignant;
    }

    public Long getIdEnseignant() {
        return idEnseignant;
    }

    public void setIdEnseignant(Long idEnseignant) {
        this.idEnseignant = idEnseignant;
    }

    public Long getIdMatiere() {
        return idMatiere;
    }

    public void setIdMatiere(Long idMatiere) {
        this.idMatiere = idMatiere;
    }

    public Long getIdPromotion() {
        return idPromotion;
    }

    public void setIdPromotion(Long idPromotion) {
        this.idPromotion = idPromotion;
    }

    public Matiere getMatiere() {
        return matiere;
    }

    public void setMatiere(Matiere matiere) {
        this.matiere = matiere;
    }

    public Promotion getPromotion() {
        return promotion;
    }

    public void setPromotion(Promotion promotion) {
        this.promotion = promotion;
    }


}
